package com.javaforever.dictionary.dao;

import com.javaforever.dictionary.domain.Dictionary;
import java.sql.Connection;
import java.util.List;

public interface DictionaryDao{
	public List<Dictionary> listAllDictionarys(Connection connection) throws Exception;
	public boolean updateDictionary(Connection connection,Dictionary dictionary) throws Exception;
	public boolean deleteDictionary(Connection connection,Long dictionaryId) throws Exception;
	public boolean addDictionary(Connection connection,Dictionary dictionary) throws Exception;
	public boolean softDeleteDictionary(Connection connection,Long dictionaryId) throws Exception;
	public Dictionary findDictionaryByDictionaryId(Connection connection,Long dictionaryId) throws Exception;
	public Dictionary findDictionaryByDictionaryName(Connection connection,String dictionaryName) throws Exception;
	public List<Dictionary> searchDictionarysByDictionaryName(Connection connection,String dictionaryName) throws Exception;
	public List<Dictionary> listActiveDictionarys(Connection connection) throws Exception;
	public List<Dictionary> listAllDictionarysByPage(Connection connection,int pagesize,int pagenum) throws Exception;
	public void deleteAllDictionarys(Connection connection,String ids) throws Exception;
	public void softDeleteAllDictionarys(Connection connection,String ids) throws Exception;
	public Boolean toggleDictionary(Connection connection,Long dictionaryId) throws Exception;
	public List<Dictionary> searchDictionarysByFieldsByPage(Connection connection,Dictionary dictionary,Long pagenum,Long pagesize) throws Exception;
	public int countDictionarysPage(Connection connection,int pagesize) throws Exception;
	public Long countActiveDictionaryRecords(Connection connection) throws Exception;
	public Long countAllDictionaryRecords(Connection connection) throws Exception;
	public Long countSearchDictionarysByFieldsRecords(Connection connection,Dictionary dictionary) throws Exception;
}
